import request from '@/utils/request'


/**
 * data支付配置
 * @typedef { object[] } data
 * @property { string } data[].shopType - 支付类型 1:可支付类型 2:不可支付类型
 * @property { number } data[].totalprice - 支付金额
 */
/**
 * appCarsListGetRes - appCarsListGet 接口返回数据
 * @typedef { object } appCarsListGetRes
 * @property { number } code - 未描述
 * @property { data } data - 支付配置
 * @property { string } elapsedMilliseconds - 未描述
 * @property { string } errorCode - 未描述
 * @property { string } errorDesc - 未描述
 * @property { string } msg - 未描述
 * @property { boolean } success - 未描述
 * @property { string } token - 未描述
 */
/**
 * appCarsListGet - 购物车商品列表
 * @return { PromiseLike<appCarsListGetRes>  } 异步请求
 */
export function appCarsListGet () {
  return request({
    url: '/app/cars/list',
    method: 'GET'
  })
}

/**
 * appCarsGetCarsCountGetRes - appCarsGetCarsCountGet 接口返回数据
 * @typedef { object } appCarsGetCarsCountGetRes
 * @property { number } code - 未描述
 * @property { string } data - 未描述
 * @property { string } elapsedMilliseconds - 未描述
 * @property { string } errorCode - 未描述
 * @property { string } errorDesc - 未描述
 * @property { string } msg - 未描述
 * @property { boolean } success - 未描述
 * @property { string } token - 未描述
 */
/**
 * appCarsGetCarsCountGet - 获取购物车数量
 * @return { PromiseLike<appCarsGetCarsCountGetRes>  } 异步请求
 */
export function appCarsGetCarsCountGet () {
  return request({
    url: '/app/cars/getCarsCount',
    method: 'GET'
  })
}

/**
 * appCarsBatchDelGetParams - appCarsBatchDelGet URI查询参数 -query
 * @typedef { object } appCarsBatchDelGetParams -query
 * @property { string } ids - 要删除的购物车明细ID多个逗号分隔-query
 */
/**
 * data支付配置
 * @typedef { object } data
 * @property { string } shopType - 支付类型 1:可支付类型 2:不可支付类型
 * @property { number } totalprice - 支付金额
 */
/**
 * appCarsBatchDelGetRes - appCarsBatchDelGet 接口返回数据
 * @typedef { object } appCarsBatchDelGetRes
 * @property { number } code - 未描述
 * @property { data } data - 支付配置
 * @property { string } elapsedMilliseconds - 未描述
 * @property { string } errorCode - 未描述
 * @property { string } errorDesc - 未描述
 * @property { string } msg - 未描述
 * @property { boolean } success - 未描述
 * @property { string } token - 未描述
 */
/**
 * appCarsBatchDelGet - 批量删除购物车明细，返回合计金额
 * @param { object } config - 请求参数配置对象.
 * @param { appCarsBatchDelGetParams } config.params URI查询参数
 * @return { PromiseLike<appCarsBatchDelGetRes>  } 异步请求
 */
export function appCarsBatchDelGet ({ params = {} } = {}) {
  return request({
    url: '/app/cars/batchDel',
    method: 'GET',
    params: params
  })
}

/**
 * appCarsEditPostParams - appCarsEditPost URI查询参数 -query
 * @typedef { object } appCarsEditPostParams -query
 * @property { string } count - 商品数量-query
 * @property { string } skuId - 操作的商品ID-query
 */
/**
 * data支付配置
 * @typedef { object } data
 * @property { string } shopType - 支付类型 1:可支付类型 2:不可支付类型
 * @property { number } totalprice - 支付金额
 */
/**
 * appCarsEditPostRes - appCarsEditPost 接口返回数据
 * @typedef { object } appCarsEditPostRes
 * @property { number } code - 未描述
 * @property { data } data - 支付配置
 * @property { string } elapsedMilliseconds - 未描述
 * @property { string } errorCode - 未描述
 * @property { string } errorDesc - 未描述
 * @property { string } msg - 未描述
 * @property { boolean } success - 未描述
 * @property { string } token - 未描述
 */
/**
 * appCarsEditPost - 添加修改购物车明细，返回合计金额
 * @param { object } config - 请求参数配置对象.
 * @param { appCarsEditPostParams } config.params URI查询参数
 * @return { PromiseLike<appCarsEditPostRes>  } 异步请求
 */
export function appCarsEditPost ({ params = {} } = {}) {
  return request({
    url: '/app/cars/edit',
    method: 'POST',
    params: params
  })
}

/**
 * appCarsSelectGetParams - appCarsSelectGet URI查询参数 -query
 * @typedef { object } appCarsSelectGetParams -query
 * @property { string } ids - 购物车明细ID多个逗号分隔-query
 * @property { string } type - 1:取消选中 2:选中-query
 */
/**
 * data支付配置
 * @typedef { object } data
 * @property { string } shopType - 支付类型 1:可支付类型 2:不可支付类型
 * @property { number } totalprice - 支付金额
 */
/**
 * appCarsSelectGetRes - appCarsSelectGet 接口返回数据
 * @typedef { object } appCarsSelectGetRes
 * @property { number } code - 未描述
 * @property { data } data - 支付配置
 * @property { string } elapsedMilliseconds - 未描述
 * @property { string } errorCode - 未描述
 * @property { string } errorDesc - 未描述
 * @property { string } msg - 未描述
 * @property { boolean } success - 未描述
 * @property { string } token - 未描述
 */
/**
 * appCarsSelectGet - 选择和取消选择购物车中的商品
 * @param { object } config - 请求参数配置对象.
 * @param { appCarsSelectGetParams } config.params URI查询参数
 * @return { PromiseLike<appCarsSelectGetRes>  } 异步请求
 */
export function appCarsSelectGet ({ params = {} } = {}) {
  return request({
    url: '/app/cars/select',
    method: 'GET',
    params: params
  })
}